canWrite(object) vs. canModify(object)

I can't detect a difference between these two.
Anyone know if they are in fact different and how?

Thanks in advance.

Regards, Strathglass.
strathglass - Wed Jun 03 10:24:00 EDT 2009

Re: canWrite(object) vs. canModify(object)
llandale - Wed Jun 03 15:50:41 EDT 2009

As far as I can tell, the various 'can' commands: 'canRead/canCreate/canControl/canModify/canDelete' refer to the user's current access to the thing right now: canDelete(obj) returns false if the module is open read. The various 'hasPermission' commands refer to the user's access rights and ignores the current open mode.

In v4 of DOORS there was only Read/Write/Control; now there is Read/Create/Modify/Delete/Control. They would never get rid of a command that used to work in this case canWrite. 'Write' seems to be a bit-wise 'OR' of Create/Modify/Delete. Thus I suppose that 'canWrite(obj)' means 'canCreate(obj) or canModify(obj) or canDelete(obj)'. 'Change' seems to have the same meaning as 'Control'.

Having said that, there is no particular reason to absolutely conclude that 'canWrite(mod)' has the same meaning as 'canWrite(obj)'; they could be different.

-Louie

Re: canWrite(object) vs. canModify(object)
strathglass - Thu Jun 04 11:18:32 EDT 2009

llandale - Wed Jun 03 15:50:41 EDT 2009
As far as I can tell, the various 'can' commands: 'canRead/canCreate/canControl/canModify/canDelete' refer to the user's current access to the thing right now: canDelete(obj) returns false if the module is open read. The various 'hasPermission' commands refer to the user's access rights and ignores the current open mode.

In v4 of DOORS there was only Read/Write/Control; now there is Read/Create/Modify/Delete/Control. They would never get rid of a command that used to work in this case canWrite. 'Write' seems to be a bit-wise 'OR' of Create/Modify/Delete. Thus I suppose that 'canWrite(obj)' means 'canCreate(obj) or canModify(obj) or canDelete(obj)'. 'Change' seems to have the same meaning as 'Control'.

Having said that, there is no particular reason to absolutely conclude that 'canWrite(mod)' has the same meaning as 'canWrite(obj)'; they could be different.

-Louie

Thanks.

FYI, what I ended up doing (based on testing) is to make sure both perms returned true to confirm I had the needed access.

Regards, Strathglass.